package cn.edu.lcu.cs.javateaching.io;

/**
 * 文件工具类
 * 
 */
public class FileUtils {
	/**
	 * 获取文件扩展名，比如文件名为 abc.jpg，返回扩展文件名 .jpg
	 * 
	 * @param filename
	 * @return
	 */
	public static String getExtension(String filename) {
		return null;
	}

	/**
	 * 文件深拷贝
	 * <ul>
	 * <li>如果源是文件，直接拷贝到目标文件夹</li>
	 * <li>如果源是文件夹，深度拷贝源文件夹到目标文件夹，包括源文件夹的所有子文件夹的内容</li>
	 * </ul>
	 * 
	 * @param source       源文件或源文件夹
	 * @param targetFolder 目标文件夹
	 */
	public static void deepCopy(String source, String targetFolder) {

	}

	/**
	 * 列目录，包括子目录的内容
	 * 
	 * @param folderName 文件夹名称
	 */
	public static void deepDir(String folderName) {

	}

	/**
	 * 单文件拷贝
	 * 
	 * @param sourceFileName 源文件名称
	 * @param targetFolder   目标文件夹
	 */
	public static void copy(String sourceFileName, String targetFolder) {

	}

	/**
	 * 删除文件或（空）目录
	 * 
	 * @param filename 被删除目录或文件名称
	 */
	public static void del(String filename) {

	}

	/**
	 * 深度删除：如果是文件则删除；如果是目录，删除当前目录及子目录所有内容
	 * 
	 * @param filename 被删除文件或目录名称
	 */
	public static void deepDel(String filename) {

	}
}
